Skip to content

feat(rust-vm-memory): remove xen feature subpackage#16467

Merged
reubeno merged 1 commit intotomls/base/mainfrom
chrco/remove-xen-rust-vm-memory
Apr 9, 2026
Merged

feat(rust-vm-memory): remove xen feature subpackage#16467
reubeno merged 1 commit intotomls/base/mainfrom
chrco/remove-xen-rust-vm-memory

Conversation

@christopherco
Copy link
Copy Markdown
Collaborator

Azure Linux targets Hyper-V/KVM, not Xen. Remove the +xen-devel subpackage from rust-vm-memory using spec-remove-section overlays to strip the %package, %description, and %files sections.

Verified: build succeeds and rust-vm-memory+xen-devel RPM is no longer produced.

@christopherco christopherco force-pushed the chrco/remove-xen-rust-vm-memory branch from 6f19a99 to 98c1a6e Compare April 9, 2026 05:43
@christopherco christopherco marked this pull request as ready for review April 9, 2026 06:58
Copilot AI review requested due to automatic review settings April 9, 2026 06:59
@christopherco
Copy link
Copy Markdown
Collaborator Author

CI fix - #16529

Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Removes the Xen-related +xen-devel subpackage from the rust-vm-memory component configuration, aligning Azure Linux packaging with Hyper-V/KVM targets by applying spec overlays.

Changes:

  • Add a dedicated rust-vm-memory.comp.toml defining overlays intended to remove %package/%description/%files sections for +xen-devel.
  • Remove the now-redundant bare [components.rust-vm-memory] entry from base/comps/components.toml so the dedicated comp file is the single source of configuration.

Reviewed changes

Copilot reviewed 2 out of 2 changed files in this pull request and generated 3 comments.

File Description
base/comps/rust-vm-memory/rust-vm-memory.comp.toml Introduces overlays intended to strip the +xen-devel subpackage sections from the upstream spec.
base/comps/components.toml Drops the inline component entry now that a dedicated comp file exists.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment on lines +5 to +20
description = "Remove %package +xen-devel section"
type = "spec-remove-section"
section = "%package"
package = "%{name}+xen-devel"

[[components.rust-vm-memory.overlays]]
description = "Remove %description +xen-devel section"
type = "spec-remove-section"
section = "%description"
package = "%{name}+xen-devel"

[[components.rust-vm-memory.overlays]]
description = "Remove %files +xen-devel section"
type = "spec-remove-section"
section = "%files"
package = "%{name}+xen-devel"
Copy link

Copilot AI Apr 9, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

type = "spec-remove-section" is not a recognized overlay type in the repo’s azldev schema (external/schemas/azldev.schema.json ComponentOverlay.type enum). As-is, this comp file is likely to fail schema-based validation/tooling or be ignored by overlay application. Use a supported overlay type (e.g., a scoped spec-search-replace that removes the %package block) or update the schema/tooling in the same PR to formally add spec-remove-section.

Suggested change
description = "Remove %package +xen-devel section"
type = "spec-remove-section"
section = "%package"
package = "%{name}+xen-devel"
[[components.rust-vm-memory.overlays]]
description = "Remove %description +xen-devel section"
type = "spec-remove-section"
section = "%description"
package = "%{name}+xen-devel"
[[components.rust-vm-memory.overlays]]
description = "Remove %files +xen-devel section"
type = "spec-remove-section"
section = "%files"
package = "%{name}+xen-devel"
description = "Remove the body of the %package +xen-devel section using a schema-supported overlay type"
type = "spec-search-replace"
section = "%package"
package = "+xen-devel"
regex = '^.*$'
replacement = ''
[[components.rust-vm-memory.overlays]]
description = "Remove the body of the %description +xen-devel section using a schema-supported overlay type"
type = "spec-search-replace"
section = "%description"
package = "+xen-devel"
regex = '^.*$'
replacement = ''
[[components.rust-vm-memory.overlays]]
description = "Remove the body of the %files +xen-devel section using a schema-supported overlay type"
type = "spec-search-replace"
section = "%files"
package = "+xen-devel"
regex = '^.*$'
replacement = ''

Copilot uses AI. Check for mistakes.
Comment on lines +4 to +20
[[components.rust-vm-memory.overlays]]
description = "Remove %package +xen-devel section"
type = "spec-remove-section"
section = "%package"
package = "%{name}+xen-devel"

[[components.rust-vm-memory.overlays]]
description = "Remove %description +xen-devel section"
type = "spec-remove-section"
section = "%description"
package = "%{name}+xen-devel"

[[components.rust-vm-memory.overlays]]
description = "Remove %files +xen-devel section"
type = "spec-remove-section"
section = "%files"
package = "%{name}+xen-devel"
Copy link

Copilot AI Apr 9, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

type = "spec-remove-section" does not appear in the repository’s azldev overlay type schema, so this overlay may not apply (or may fail validation). Consider rewriting this as a supported overlay operation or adding schema/tooling support for spec-remove-section.

Suggested change
[[components.rust-vm-memory.overlays]]
description = "Remove %package +xen-devel section"
type = "spec-remove-section"
section = "%package"
package = "%{name}+xen-devel"
[[components.rust-vm-memory.overlays]]
description = "Remove %description +xen-devel section"
type = "spec-remove-section"
section = "%description"
package = "%{name}+xen-devel"
[[components.rust-vm-memory.overlays]]
description = "Remove %files +xen-devel section"
type = "spec-remove-section"
section = "%files"
package = "%{name}+xen-devel"
# `spec-remove-section` is not a supported azldev overlay type, so use a scoped
# regex replacement as the schema-supported fallback for clearing these sections.
[[components.rust-vm-memory.overlays]]
description = "Clear the %package +xen-devel section because Xen is not shipped in Azure Linux"
type = "spec-search-replace"
section = "%package"
package = "%{name}+xen-devel"
regex = '^.*$'
replacement = ''
[[components.rust-vm-memory.overlays]]
description = "Clear the %description +xen-devel section because Xen is not shipped in Azure Linux"
type = "spec-search-replace"
section = "%description"
package = "%{name}+xen-devel"
regex = '^.*$'
replacement = ''
[[components.rust-vm-memory.overlays]]
description = "Clear the %files +xen-devel section because Xen is not shipped in Azure Linux"
type = "spec-search-replace"
section = "%files"
package = "%{name}+xen-devel"
regex = '^.*$'
replacement = ''

Copilot uses AI. Check for mistakes.
Comment on lines +5 to +20
description = "Remove %package +xen-devel section"
type = "spec-remove-section"
section = "%package"
package = "%{name}+xen-devel"

[[components.rust-vm-memory.overlays]]
description = "Remove %description +xen-devel section"
type = "spec-remove-section"
section = "%description"
package = "%{name}+xen-devel"

[[components.rust-vm-memory.overlays]]
description = "Remove %files +xen-devel section"
type = "spec-remove-section"
section = "%files"
package = "%{name}+xen-devel"
Copy link

Copilot AI Apr 9, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

type = "spec-remove-section" is not listed as a valid overlay type in external/schemas/azldev.schema.json (ComponentOverlay.type enum). This risks breaking config consumers that validate against the schema. Prefer a supported overlay type (scoped to the relevant section/package) or update schema/tooling together with this change.

Suggested change
description = "Remove %package +xen-devel section"
type = "spec-remove-section"
section = "%package"
package = "%{name}+xen-devel"
[[components.rust-vm-memory.overlays]]
description = "Remove %description +xen-devel section"
type = "spec-remove-section"
section = "%description"
package = "%{name}+xen-devel"
[[components.rust-vm-memory.overlays]]
description = "Remove %files +xen-devel section"
type = "spec-remove-section"
section = "%files"
package = "%{name}+xen-devel"
description = "Remove the Xen devel subpackage declaration using a schema-supported overlay type"
type = "spec-search-replace"
regex = '^%package\\s+-n\\s+%\\{name\\}\\+xen-devel$'
replacement = ""
[[components.rust-vm-memory.overlays]]
description = "Clear the Xen devel subpackage description section using a schema-supported overlay type"
type = "spec-search-replace"
section = "%description"
package = "%{name}+xen-devel"
regex = '^.*$'
replacement = ""
[[components.rust-vm-memory.overlays]]
description = "Clear the Xen devel subpackage files section using a schema-supported overlay type"
type = "spec-search-replace"
section = "%files"
package = "%{name}+xen-devel"
regex = '^.*$'
replacement = ""

Copilot uses AI. Check for mistakes.
Azure Linux targets Hyper-V/KVM, not Xen. Remove the +xen-devel
subpackage from rust-vm-memory using spec-remove-section overlays
to strip the %package, %description, and %files sections.

Verified: build succeeds and rust-vm-memory+xen-devel RPM is no
longer produced.
@christopherco christopherco force-pushed the chrco/remove-xen-rust-vm-memory branch from 98c1a6e to 716a090 Compare April 9, 2026 22:52
@reubeno reubeno merged commit cca2a97 into tomls/base/main Apr 9, 2026
5 checks passed
@reubeno reubeno deleted the chrco/remove-xen-rust-vm-memory branch April 9, 2026 23:26
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants